/*
* @Author: Karry
* @Date:   2017-10-03 00:35:03
* @Last Modified by:   Karry
* @Last Modified time: 2017-10-14 09:50:49
*/

require('./index.css');
require('page/common/nav-simple/index.js');
var _user = require('service/user-service.js');
var _db   = require('util/db.js');

// 表单里的错误提示
var formError = {
    show : function(errMsg){
        $('.error-item').show().find('.err-msg').text(errMsg);
    },
    hide : function(){
        $('.error-item').hide().find('.err-msg').text('');
    }
};

// page 逻辑部分
var page = {
    init : function(){
        this.bindEvent();
    },
    bindEvent : function(){
        var _this = this;
        // 登录按钮点击
        $('#submit').click(function(){
            _this.submit();
        });
        // 按下回车进行登录
        $('.user-content').keyup(function(e){
            // keyCode == 13 表示回车
            if (e.keyCode === 13) {
                _this.submit();
            }
        });
    },
    submit : function(){
        var formData = {
            username : $.trim($('#username').val()),
            password : $.trim($('#password').val())
        },
        // validateResult 是表单验证结果
        validateResult = this.formValidate(formData);
        // 验证成功
        if (validateResult.status) {
            // 提交
            _user.login(formData, function(res){
                window.location.href = _db.getUrlParam('redirect') || './index.html';
            },function(errMsg){
                formError.show(errMsg);
            });
        }
        // 验证失败
        else{
            // 错误提示
            formError.show(validateResult.msg);
        }
    },
    formValidate : function(formData){
        var result = {
            status : false,
            msg    : ''
        };
        if (!_db.validate(formData.username,'require')) {
            result.msg = '用户名不能为空';
            return result;
        }
        if (!_db.validate(formData.password,'require')) {
            result.msg = '密码不能为空';
            return result;
        }
        // 通过验证，返回正确提示
        result.status = true;
        result.msg    = '验证通过';
        return result;
    }
};
$(function(){
    page.init();
});
